package com.unionpay.db;

import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.unionpay.async.AsyncTask;
import com.unionpay.async.AsyncTaskPool;
import com.unionpay.entity.InputtochainEntity;
import com.unionpay.mapper.InputtochainEntityMapper;
import com.unionpay.util.StrUtil;

/**
 * inputtochain表操作
 * 
 * @author liuzy
 * @since 2016年4月29日
 */
public class TblInputtochain {
	static InputtochainEntityMapper mapper = Mybaties.getMapper(InputtochainEntityMapper.class);

	public static void save(String nodeurl, String bizid, String from, String to, String input, String transactionid) {
		InputtochainEntity entity = new InputtochainEntity();
		entity.setNodeurl(nodeurl);
		entity.setBizid(bizid);
		entity.setFrom(from);
		entity.setTo(to);
		entity.setInput(input);
		entity.setTransactionid(transactionid);
		entity.setTime(new Date());
		mapper.insert(entity);
	}

	public static void asyncSave(String nodeurl, String bizid, String from, String to, String input, String transactionid) {
		String sql = "insert into inputtochain(`nodeurl`,`bizid`,`from`,`to`,`input`,`transactionid`,`time`) value(?,?,?,?,?,?,?)";
		AsyncTask asyncTask = new AsyncTask(sql, new String[] { nodeurl, bizid, from, to, input, transactionid, StrUtil.getDate(new Date()) });
		AsyncTaskPool.add(asyncTask);
	}
	
	public static List<InputtochainEntity> gettransactionids(String bizid,Integer anchorcofigid,Integer anchorrecords,String byrecord){
		Map<String, Object> map=new HashMap<String, Object>();
		map.put("bizid", bizid);
		map.put("anchorcofigid", anchorcofigid);
		map.put("anchorrecords", anchorrecords);
		if(!StrUtil.hasEmpty(byrecord)){
			map.put("byrecord", byrecord);

		}
		return mapper.gettransactionids(map);
	}
	
	public static List<String> getinputs(String bizid,Integer lastid){
		Map<String, Object> map=new HashMap<String, Object>();
		map.put("bizid", bizid);
		map.put("lastid", lastid);
		return mapper.getinputs(map);
	}
}
